package com.whut.service;

import com.whut.model.Manageinfo;
import com.whut.model.Orderinfo;
import com.whut.model.Userinfo;

import java.util.List;

public interface ManageService {
    /**
     * @auther wenyihan
     * 通过id查找所有的请假及到岗信息
     * @date 14:41 2019/10/29
     * @param （id, userName）
     * @return java.lang.Object
    */
    Object getRegistInfoById(int id, String userName);
    public Userinfo getUserById(int mKey);

    List<Object> getAllUserInfoByMark(Integer mark);

    Orderinfo getOrderById(Integer id);

    String  deleteUserById(Integer id);

    String updateRoomStatusByRoomId(Integer roomId,Integer roomStatus);

    String updateUserInfo(Userinfo userinfo);

    String updateOrder(Orderinfo orderinfo);

    Manageinfo getManageInfo(Integer id, Integer registTime);

    String updateReason(Integer id, String registTime, String reason);

    String deleteManageInfo(Integer id, String registTime);

    String updateManageInfo(Manageinfo mangeinfo);

    String addUserInfo(Userinfo userinfo);

    Integer getLeaveTimes(Integer id, Integer registTime);

    Integer getRegistTimes(Integer id, Integer registTime);

    List<Object> getAllPostInfo();

    Object getAllUserInfo();


    /**
     * @auther wenyihan
     * 获取当天所有请假信息
     * @date 14:31 2019/11/1
     * @return java.lang.Object
    */
    Object getAllLeaveInfoByDate(String date);

    /**
     * @auther wenyihan
     * 获取所有的请假信息
     * @date 14:37 2019/11/1
     * @param
     * @return java.lang.Object
    */
    Object getAllLeaveInfo();

    /**
     * @auther wenyihan
     * 通过id和leaveTime查找到当前的请假信息，将leave置0，leaveTime置空
     * @date 18:26 2019/11/1
     * @param （id, date）
     * @return java.lang.Object
    */
    Object disagree(int id, String date);

    /**
     * @auther wenyihan
     * 筛选某天某个员工的打卡信息
     * @date 20:56 2019/11/1
     * @param (id, startTime, endTime)
     * @param leaveTime
     * @return java.lang.Object
    */
    Object getRegistInfoByTime(int id, String leaveTime, String startTime, String endTime);

    String updatePostTypeInfo(String postType, Integer baseSalary, Integer bonus);

    Object getSalaryByPostType(String postType);

    String updatePayById(Integer id, Integer pay);

    String settlePay(Integer id);
}
